package com.answeringplayer.mapper;

import com.answeringplayer.domain.ExamAnswer;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;

/**
 * 考试答案Mapper接口
 */
@Mapper
public interface ExamAnswerMapper {
    /**
     * 新增考试答案
     * @param examAnswer 考试答案
     * @return 影响行数
     */
    int insert(ExamAnswer examAnswer);

    /**
     * 批量新增考试答案
     * @param examAnswers 考试答案列表
     * @return 影响行数
     */
    int batchInsert(List<ExamAnswer> examAnswers);

    /**
     * 根据ID更新考试答案
     * @param examAnswer 考试答案
     * @return 影响行数
     */
    int updateById(ExamAnswer examAnswer);

    /**
     * 根据ID删除考试答案
     * @param answerId 答案ID
     * @return 影响行数
     */
    int deleteById(Long answerId);

    /**
     * 根据ID查询考试答案
     * @param answerId 答案ID
     * @return 考试答案
     */
    ExamAnswer selectById(Long answerId);

    /**
     * 根据记录ID查询考试答案列表
     * @param recordId 记录ID
     * @return 考试答案列表
     */
    List<ExamAnswer> selectByRecordId(Long recordId);

    /**
     * 根据用户ID和问题ID查询考试答案
     * @param userId 用户ID
     * @param questionId 问题ID
     * @return 考试答案列表
     */
    List<ExamAnswer> selectByUserIdAndQuestionId(Long userId, Long questionId);
}